1. Technical Field
The present invention pertains to network modeling and simulation systems. In particular, the present invention pertains to a network simulation system employing configurable node models selectively enabling varying levels of network analysis (e.g., low or high level granularity).
2. Discussion of Related Art
Currently, there are several commercial and non-commercial tools available in the area of network modeling and simulation that a network modeler may utilize to achieve modeling objectives. Some of these tools include OPNET, QualNet, PARSEC and NS-2. In most of the modeling tools, a communication protocol stack (e.g., with various communication protocol layers, such as a physical layer, a link layer, a network layer, a transport layer, a session layer, an application layer, etc.) for a simulated device (e.g., a wireless radio, etc.) is modeled in a node model as illustrated in FIG. 1. In particular, a node model 15 includes a communication protocol stack with a plurality of communication protocol layers 20. The protocol layers each include functions to perform desired communications. Each function of a protocol layer in the protocol stack is modeled by a software module and the signal flow (i.e., information exchange) between an upper-layer software module and a corresponding lower-layer software module is predefined and hard-coded in the related software implementations. In other words, once the development of the node model is completed, the flow of the protocol signal from a software module of a protocol layer can only be re-directed to the pre-designated software module of an adjacent protocol layer.
Although the above implementation of node models is adequate when the node models are applied to a narrowly defined set of simulation tasks (e.g., detailed simulation of a network at the expense of long CPU processing time, or abstract simulation of the network at the expense of simulation accuracy with shorter execution time), these node models suffer from several disadvantages. In particular, the above node models are pre-constructed with fixed software implementations. Accordingly, the traditional approaches employ an inflexible architectural design, thereby providing a negative impact on the cost of model development and the usefulness of developed models. Since the traditional architecture provides limited support of only one software implementation for each protocol layer function in the protocol stack, the developed node model is restricted to particular needs (and cannot support diverse needs, such as both detailed and abstract simulation of a network). In other words, when a traditional node model is constructed with software implementations optimized for detailed simulation of a network, the task becomes extremely difficult to re-use or adapt the node model to perform abstract simulation of the same network in order to shorten simulation execution time. Thus, separate traditional node models with different software implementations are required for different simulations or analysis (e.g. detailed versus abstract) of the network.